1. Field of the Invention
This invention relates to process controllers, and in particular to parallel process controllers.
2. Description of the Prior Art
The use of control systems in industry and commerce is pervasive. Such control systems are typically used in chemical processing, textile processing, steel manufacture, weighing systems, and virtually any industrial manufacturing process. Originally, such control systems depended upon timely human decisions and intervention for proper operation. However, control systems that operate independently of human response have recently appeared. These control systems have typically relied on predetermined limits, sequences, and actions in order to properly control the system. Thus, the tools of the control engineer have progressed from simple human intervention to relays, to simple sequences, and finally, in the recent past, to programmable controllers; such as the Models 084, 184 and 284 of the Modicon Division of Gould Inc. The advent of programmable controllers was a powerful new tool for the control engineer, for it allowed him or her to produce a control program that effectively simulated the logic functions of hard wired relays.
The use of relay logic was a natural first step for the control engineer to take. Also, the use of sequencers, or stepping switches, to make relay logic cyclicable and repetitive was a logical extension of hard wired relay logic. Thus, the introduction of programmable controllers that operated in relay logic fashion and were programmable in a relay ladder diagram format was a natural; albeit highly innovative, progression of the control engineering art.
However, at this point the logical development of tools for the control engineer broke down. The industry's acceptance of programmable controllers as a working tool led to the desire to assign greater and more complex control tasks to these controllers. Some of these tasks have been met in part by adding to programmable controllers the ability to perform non-relay logic functions such as data transfer operations as enumerated in application United States Application, U.S. Pat. No. 3,940,233, issued Dec. 30, 1975, assigned to the Modicon Division of Gould Inc., and incorporated herein by reference.
However, although the programmable controllers may be improved to allow some data transfer capability, the programmable controllers do not have the speed nor the capability to rapidly perform many such data transfer operations without lengthening the execution time of the relay logic lines of the programmable controller.
An alternative to the programmable controller having such added functions was found to be the mini-computer, which is capable of performing far more complex tasks than a programmable controller. However, mini-computers have the significant drawback of requiring a programmer to define its operations. Thus, the control engineer could no longer speak to his equipment directly, because the mini-computer did not comprehend relay logic. The mini-computer spoke computer language, or assembly language, or some interpretive language like Fortran, and the control engineer typically did not speak these languages.
Thus, this more powerful tool for the control engineer required an interpreter between it and the control engineer. Furthermore, the larger the computer, the greater the interpreter's skill required to program the computer.
In using a mini-computer to perform control functions for industrial control systems, the control engineer would design his system and tell the programmer what he wanted the mini-computer to do. Consequently, a new language was necessary which was considered a compromise between the control engineer and the programmer. The control engineer put his control system's request into a new language, and the programmer converted it into computer language. Consequently, there were mistakes and mistaken interpretations due to the extra man between the control engineer and the system to be controlled. The resultant misunderstandings and re-education by both the control engineer and the programmer resulted in an inefficient control system with major economic drawbacks. Thus even though with the use of a mini-computer it was possible to perform more complicated tasks than previously performable by simple programmable controllers, the development and debugging of software for the mini-computer, as well as the interfacing hardware necessary between the mini-computer and the system to be controlled, made such a mini-computer system an order of magnitude more expensive and time consuming to implement than programmable controllers.
Also, today's control system problems have become more difficult due to the large control problems encountered in many large industrial complexes. Some control engineers have used multiple service programmable controllers to tackle such large control system's problems. Others have used the general purpose computer directly through a variety of general and special interface boxes. Finally, there is an increasing trend toward the development of special languages for a dedicated mini-computer. Various suppliers have developed dedicated programming languages for specific market segments. However, there seems to be little commonality between these programming languages.
The control engineers that have attempted to use computers have suffered through the development time and expense of generating original software for the computers. Furthermore, they have the continuing problem of implementing changes in the process, or changes in the control technique that require alteration of the software. Thus, even though the computer is programmed to perform a control task, it still requires a programmer to make every change in the program performing that task. Even minor changes in the process require a programmer's assistance in reinstructing the computer.
Furthermore, the dedicated computers being applied through interpretive programming language are not free of problems. Computers are not generally variable in size to match a given job, which results in excess capacity and expense in those situations where the job is small, or complicated interconnections between two or more computers if the control task is large. In addition, the reliability of the computer creates a maintenance problem, since computers generally are intended to be used in the computer room environment and not in the hard-hat environment of industrial process control.
Clearly then, the ideal solution to the problem of control system implementation is a special purpose machine that communicates in a language understandable by the control engineer, that is expandable to fit the desired control system, and that can withstand the industrial environment. Furthermore such a machine must be reliable and be equipped with input/output capability that will operate the relay valves and motors found in industrial process control systems. Such a machine must give the control engineer the enlarged and expandable data base that the current programmable controllers lack, and eliminate the need of the programmer intermediary used with mini-computers and computers.
The present parallel process controller is this solution. It comprises command memory modules, data memory modules, an input/output system, a programming panel, and a high speed N-bus (data bus) for accomplishing any desired control task. The control engineer simply instructs the command memory modules through the interconnectable programming panel what he desires to be performed. The control engineer does not have to tell the process controller how to perform what he desires because the command memory modules incorporate the necessary hardware for solving the instructions selected by the control engineer.
Since each command memory module is a physically separable item, they may be added to the process controller to adequately fit the size of a particular control task. Furthermore, since each command memory module acts autonomously from the other command memory modules, and since each command module solves its selected instructions in a short, fixed, length of time, the entire process controller, regardless of the overall complexity of the entire control task, performs this control task in a parallel fashion. That is, the system response time is not a function of the complexity of the control task.
The programming panel not only allows the control engineer to instruct the command modules, but also allows the control engineer to monitor and troubleshoot the entire process controller. A discrete, simpler, user oriented language is used, therefore not requiring the control engineer to understand computer language. Furthermore, all information displays are decimal, not requiring the control engineer to know and understand other numeric systems.
The present invention also incorporates data memory modules which allow expansion of the data base to fit a particular control task. In addition, the input/output system of the present invention provides high speed, error-free transfer of information from the process under control to the process controller, as well as the transferral of industrial compatible signals to operate relays, valves, and motors ordinarily found on equipment in the control process.
The parallel process controller can also serve as a master control over a number of programmable controllers that interface with the process under control. Here, the process controller of the present invention forms the hierarchical control needed for controlling complex processes.